import { cloneDeep } from 'lodash';
//初始状态
const initialState = cloneDeep({
  writing_session_id: null, //当前会话的id 用于轮询请求
  curFeedbacks: null, //当前展示文章的评价反馈的数据 包含评分star document_uuid 赞和踩的列表数据feedback_items 用于左侧文章内容展示
  curDoc: null, //当前展示文章的content和title 用于左侧文章内容展示
  curOperationType: { type: 'input', data: null }, //操作类型 评分score 点赞zan 踩cai cancelZanCai取消赞和踩 输入文字input 用于右侧底部输入框
  currentDocIndex: '1-1', //当前展示的文章的index //用于左侧tab索引
  robotLoading: false, //右侧对话框里机器人的loading
  versions: [], //文章的历史版本列表 //用于历史版本抽屉的展示
  selVersionNo: 1, //当前文章选中的版本号
  documentUUID: '', //当前文章的uuid
  user_score: 0, //用户对当前文章的评分
  standard_score: 0, //AI对当前文章的评分
  docCommonInfo: null, //所有文章的公共信息 example_details key_points leading_details click_status user_input 用于左侧对话框上部分的内容
  docList: [], //所有文章的列表 用于左侧tab的展示
  last_document_id: null, //最后一篇文章的id
  userCommands: [], //y用户输入的命令列表
  articles_expected: 0, // 预期文章数量 生成的文章数量
});
const ConversationModel = {
  namespace: 'conversation',
  state: initialState, // 使用深拷贝的 initialState
  reducers: {
    updateState(state, action) {
      return {
        ...state,
        ...action.payload,
      };
    },
    resetState() {
      return cloneDeep(initialState); // 重置状态时也使用深拷贝的 initialState
    },
  },
};

export default ConversationModel;
